package classes;
import java.util.ArrayList;
import java.util.List;

public class Agenda {

	private List<Espai> llistaEspais;
		
	public Agenda() {
		super();
		this.llistaEspais = new ArrayList<Espai>();
	}


	public void assignarEspai(Espai auxEspai) {
		
		if (this.contiene(auxEspai)){
			this.getEspai(auxEspai).merge(auxEspai);
			
			
		}else{
			llistaEspais.add(auxEspai);
		}
		
	}
	public void substituirEspai(Espai auxEspai) {
		boolean trobat=false;
		for (Espai miEspai : this.llistaEspais){
			if (miEspai.equals(auxEspai)){
				miEspai=auxEspai;
				trobat=true;
				break;
			}
		}
		if (!trobat){
			llistaEspais.add(auxEspai);
		}
		
	}


	public List<Espai> getLlistaEspais() {
		return llistaEspais;
	}
	public boolean contiene(Espai auxEspai){
		boolean auxBoolean=false;
		
		for (Espai miEspai : this.llistaEspais){
			if (auxBoolean=miEspai.equals(auxEspai)){
				return true;
			}
		}
		
		return auxBoolean;
	}
	public Espai getEspai(Espai auxEspai){
		
		
		for (Espai miEspai : this.llistaEspais){
			if (miEspai.equals(auxEspai)){
				return miEspai;
			}
		}
		
		return null;
	}

	@Override
	public String toString() {
		String auxString="";
		
		
		for (Espai espai :llistaEspais){
			
			auxString+="Espai : " + espai.getNom() + "\n";
			auxString+= espai.getCal().toString();
		}
		
		
		return auxString;
	}
	
	

}
